//
// Created by zsy on 2022/2/19.
//

#ifndef MMF_CPP_PFA_H
#define MMF_CPP_PFA_H

#include <vector>


class PFASolver {
public:
    // @capacities: 每条链路的容量，索引就代表了这条链路的编号
    void set_topo(const std::vector<double>& capacities);
    // @flow_paths: 第一层索引代表流的编号，里层vector存储的是流经过的链路编号
    // return: 每条流占用的带宽，索引就是流的编号
    std::vector<double> solve(const std::vector<std::vector<int>>& flow_paths);
private:
    std::vector<double> m_capacities;
};


#endif //MMF_CPP_PFA_H
